// notificationScheduler.js
import { ElNotification } from 'element-plus'
let timerId = null;

export function sendDailyNotification() {
    ElNotification({
        title: '提示',
        message: '这是每日定时发送的通知！',
        type: 'info',
        position: 'top-left'
    });
}

export function startDailyNotification(hour = 9, minute = 0) {
    // 清除已有的定时器
    if (timerId) {
        clearInterval(timerId);
        clearTimeout(timerId);
    }

    const now = new Date();
    // 设定每天发送通知的时间
    let notificationTime = new Date(now.getFullYear(), now.getMonth(), now.getDate(), hour, minute, 0).getTime();

    // 如果当前时间已超过设定的通知时间，则调整为明天的时间
    if (now.getTime() > notificationTime) {
        notificationTime += 24 * 60 * 60 * 1000;// 加一天
    }

    const timeToWait = notificationTime - now.getTime();

    //每分钟发送一次通知
    timerId = setInterval(() => {
        sendDailyNotification();
    },60 * 60 * 1000);
    // 60 * 60 * 1000 // 每小时发送一次
    //60 * 1000 // 每分钟发送一次
}

export function stopDailyNotification() {
    if (timerId) {
        clearInterval(timerId);
        clearTimeout(timerId);
        timerId = null;
    }
}